package com.git.hui.yinshua.biz.rest.models.order.req;

import com.git.hui.yinshua.api.model.order.OrderTypeEnum;
import lombok.Data;

import java.util.List;

/**
 * @author YiHui
 * @date 2024/6/20
 */
@Data
public class OrderCreateReq {
    /**
     * 拼团单id
     */
    private Integer ptOrderId;
    /**
     * 订单id
     */
    private Long orderId;

    private Integer userId;

    /**
     * 订单金额 -> 商品折扣价 * 数量 + 运费
     */
    private String orderAmount;

    /**
     * 没有折扣的订单金额 : 商品原价 * 数量 + 运费
     */
    private String originalAmount;

    /**
     * 运费
     */
    private String shippingAmount;

    /**
     * 实际支付金额 -> 通常是等于orderAmount， 如果有促销，则需要减去促销金额
     */
    private String payAmount;

    /**
     * 订单状态
     */
    private Integer orderStatus;

    /**
     * 下单时间
     */
    private Long orderTime;

    /**
     * 支付时间
     */
    private Long paySuccessTime;

    /**
     * 发货时间
     */
    private Long deliveryTime;


    /**
     * 订单备注
     */
    private String remark;


    /**
     * 收货人
     */
    private String receivingPerson;
    /**
     * 收件人手机号
     */
    private String receivingPhone;
    /**
     * 收货人省市区
     */
    private String receivingArea;

    /**
     * 收货人详细地址
     */
    private String receivingAddress;

    /**
     * 商品列表
     */
    private List<OrderItemCreateReq> itemList;

    /**
     * 订单类型
     *
     * @see OrderTypeEnum#getType()
     */
    private Integer type;

    /**
     * true 表示拼团商品，主要是为了支持拼团商品直接购买的场景
     */
    private Boolean ptGoods;
}
